package com.yh.patterns.TemplateMethod;

/**
 * @Author:云尚
 * @Description:抽象类（定义模板方法和基本方法）
 */
public abstract class AbstractClass {
    //炒菜步骤
    public final void cookProcess(){
        //1，第一步倒油
        this.pourOil();
        //2.第二步热油
        this.heatOil();
        //3.第三步倒蔬菜
        this.pourVegetable();
        //4.第四步到调料品
        this.pourSauce();
        //5.翻炒
        this.fry();
    }
    //倒油
    public void pourOil(){
        System.out.println("倒油");
    }
    //热油
    public void heatOil(){
        System.out.println("热油");
    }
    //倒蔬菜
    public abstract void pourVegetable();
    //到调料品
    public abstract void pourSauce();
    //翻炒
    public void fry(){
        System.out.println("翻炒");
    }
}
